<!DOCTYPE html>
<html  class="language_zh">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="keywords" content="teedoc, 部署">
    <meta name="description" content="teedoc 生成的网站部署到服务器">
    <meta name="generator" content="teedoc">
    <meta name="markdown-generator" content="teedoc-plugin-markdown-parser">
        <link rel="stylesheet" href="/static/css/theme_default/prism.min.css" type="text/css"/>
        <link rel="stylesheet" href="/static/css/theme_default/dark.css" type="text/css"/>
        <link rel="stylesheet" href="/static/css/theme_default/light.css" type="text/css"/>
        <link rel="stylesheet" href="/static/css/custom.css" type="text/css"/>
        <script src="/static/js/theme_default/jquery.min.js"></script>
        <script src="/static/js/theme_default/pre_main.js"></script>
        <link rel="stylesheet" href="/static/css/search/style.css" type="text/css"/>
        <script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?91ac08174b63c5c88f71f8a94004a1fe";
  var s = document.getElementsByTagName("script")[0]; 
  s.parentNode.insertBefore(hm, s);
})();
</script>
    <title>部署 teedoc 生成的网站到 github pages - teedoc</title>
</head>
<body>
    
            <div id="navbar">
                <div id="navbar_menu">
                    <a class="site_title" href="/"><img class="site_logo" src="/static/image/logo.png" alt="teedoc logo"><h2>teedoc</h2></a>
                    <a id="navbar_menu_btn"></a>
                </div>
                <div id="navbar_items">
                    <div>
                        <ul id="nav_left">
<li class="active"><a  href="/get_started/zh/">安装使用</a></li>
<li class=""><a  href="/develop/zh/">开发</a></li>
</ul>

                    </div>
                    <div>
                        <ul id="nav_right">
<li class=""><a target="_blank" href="https://github.com/neutree/teedoc">github</a></li>
<li class="sub_items "><a  href="">Language: 中文</a><ul><li class="active"><a  href="/get_started/zh/">中文</a></li>
<li class=""><a  href="/get_started/en/">English</a></li>
</ul></li>
</ul>

                        <ul class="nav_plugins"><li><a id="themes" class="light"></a></li></ul><ul class="nav_plugins"><li><a id="search"><span class="icon"></span><span class="placeholder">搜索</span>
                            <div id="search_hints">
                                <span id="search_input_hint">输入关键词，多关键词空格隔开</span>
                                <span id="search_loading_hint">正在加载，请稍候。。。</span>
                                <span id="search_download_err_hint">下载文件失败，请刷新重试或检查网络</span>
                                <span id="search_other_docs_result_hint">来自其它文档的结果</span>
                                <span id="search_curr_doc_result_hint">当前文档搜索结果</span>
                            </div></a></li></ul>
                    </div>
                </div>
            </div>
    
        <div id="wrapper">
            
            <div id="sidebar_wrapper">
                <div id="sidebar">
                    <div id="sidebar_title">
                        
                    </div>
                    <ul class="show">
<li class="not_active with_link"><a href="/get_started/zh/index.html"><span class="label">teedoc 简介</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/install/index.html"><span class="label">安装 teedoc</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/usage/start.html"><span class="label">开始写文档</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/usage/write_attention.html"><span class="label">写文档时需注意</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/plugins/index.html"><span class="label">插件</span><span class="sub_indicator sub_indicator_collapsed"></span></a><ul class="">
<li class="not_active with_link"><a href="/get_started/zh/plugins/themes.html"><span class="label">主题插件</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/plugins/others.html"><span class="label">其它插件</span><span class=""></span></a></li>
</ul>
</li>
<li class="not_active with_link"><a href="/get_started/zh/syntax/syntax_markdown.html"><span class="label">markdown 语法</span><span class=""></span></a></li>
<li class="active_parent with_link"><a href="/get_started/zh/usage/deploy.html"><span class="label">部署</span><span class="sub_indicator"></span></a><ul class="show">
<li class="active with_link"><a href="/get_started/zh/usage/deploy_github_pages.html"><span class="label">部署到 github</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/usage/deploy_nginx.html"><span class="label">使用 nginx 部署到服务器</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/usage/deploy_cdn.html"><span class="label">使用 CDN 加速网站</span><span class=""></span></a></li>
</ul>
</li>
<li class="not_active with_link"><a href="/get_started/zh/usage/seo.html"><span class="label">SEO(为搜索引擎优化)</span><span class=""></span></a></li>
<li class="not_active with_link"><a href="/get_started/zh/usage/sites.html"><span class="label">使用了 teedoc 的网站</span><span class=""></span></a></li>
<li class="not_active no_link"><a><span class="label">更多样例</span><span class="sub_indicator sub_indicator_collapsed"></span></a><ul class="">
<li class="not_active no_link"><a><span class="label">二级子目录样例</span><span class="sub_indicator sub_indicator_collapsed"></span></a><ul class="">
<li class="not_active no_link"><a><span class="label">三级子目录样例</span><span class="sub_indicator sub_indicator_collapsed"></span></a><ul class="">
<li class="not_active with_link"><a href="/get_started/zh/more/example_docs/doc1.html"><span class="label">文章1</span><span class=""></span></a></li>
</ul>
</li>
<li class="not_active with_link"><a href="/get_started/zh/more/example_docs/doc2.html"><span class="label">文章2</span><span class=""></span></a></li>
</ul>
</li>
<li class="not_active with_link"><a href="https://github.com/teedoc/teedoc" target="_blank"><span class="label">这是一个外部链接</span><span class=""></span></a></li>
</ul>
</li>
</ul>

                </div>
            </div>
            <div id="menu_wrapper">
                                    <div id="menu">
                                    </div>
                                </div>
            <div id="article">
                <div id="content_wrapper">
                    <div id="content_body">
                        <div id="article_title">
                            <h1>部署 teedoc 生成的网站到 github pages</h1>
                        </div>
                        <div id="article_tags">
                            <ul></ul>
                        </div>
                        <div id="article_content">
                            <h2 id="-1">克隆模板仓库</h2>

<p>访问 <a href="https://github.com/teedoc/teedoc.github.io">https://github.com/teedoc/teedoc.github.io</a><br />
点击 <code>Use this template</code><br />
<img src="../../assets/images/github_use_template.jpg" alt="github use template" /><br />
然后填写新的仓库名称（如果你不准备自定义域名，则仓库名字最好是<code>teedoc.github.io</code>将<code>teedoc</code>替换成你的用户名或者组织名）和描述，基于这个仓库新建一个你自己的仓库，现在你获得了和 <code>teedoc</code>官网一模一样的仓库了</p>

<blockquote>
  <p>会发现有一个<code>.github/workflows</code>的目录，这个就是<code>github action</code>的配置文件，我们利用这个功能来实现：<br />
  当我们更新仓库的源文件时， <code>github action</code>自动根据这个配置文件的命令构建生成静态网页，然后推送到这个仓库的<code>gh-pages</code>分支</p>
</blockquote>

<h2 id="ssh">生成 ssh 密钥</h2>

<p>然后在本地生成一对<code>key</code>（windows下需要先安装相关软件，请自行安装（安装git就会有））</p>

<pre><code>ssh-keygen -t rsa -f key.txt 
</code></pre>

<p>得到了<code>key.txt</code>和 <code>key.key.pub</code>两个文件</p>

<h2 id="-2">设置密钥</h2>

<p>到文档项目的设置里面设置<code>ssh</code>密钥, 添加一个<code>ssh</code>密钥， 拷贝 <code>key.txt.pub</code> 中的内容，注意是<code>pub</code>文件，即公钥，名字随便取<br />
<img src="../../assets/images/github_deploy_key.jpg" alt="" /></p>

<p>然后点击<code>Secrets</code>，设置秘密键值对， 需要设置的变量有：</p>

<ul>
<li><code>ACCESS_KEY</code>: 复制<code>key.txt</code>中的内容</li>
<li><code>GIT_EMAIL</code>: 设置一个<code>git</code>提交邮箱，设置你的<code>github</code>邮箱即可</li>
<li><code>GIT_NAME</code>: 设置一个<code>git</code>提交名字，设置你的<code>github</code>名字即可</li>
<li><code>REPO</code>: 仓库地址， 设置为<code>组织名/仓库名</code>或者<code>用户名/仓库名</code>，比如<code>teedoc/teedoc.github.io</code>即可<br />
<img src="../../assets/images/github_secrets.jpg" alt="" /></li>
</ul>

<h2 id="-3">触发构建</h2>

<p>像仓库提交一次修改，会自动触发构建， 可以在<code>Actions</code>栏看到进度和日志</p>

<p>如果是绿色的勾， 就代表成功了，否则就是失败了，可以点进去看构建日志报了什么错，一般都是前面的值填错了</p>

<p><img src="../../assets/images/github_action.jpg" alt="" /></p>

<h2 id="pages">设置 pages 服务</h2>

<p>然后在设置里面找到 <code>pages</code> 服务设置，打开即可，然后访问对应的域名，可以勾选 <code>Enforce HTTPS</code>来使能<code>HTTPS</code>（推荐）<br />
比如这里是<code>https://teedoc.github.io/</code></p>

<blockquote class="spoiler">
  <p>注意如果跟路径不是<code>/</code>，而且没有自定义域名（自定义域名见后面的介绍），比如<code>https://teedoc.github.io/my_site/</code>， 则需要在<code>site_config.json</code>中配置<code>"site_root_url":"/my_site/"</code></p>
</blockquote>

<p><img src="../../assets/images/github_pages.jpg" alt="" /></p>

<h2 id="pages-2">Pages 服务自定义域名</h2>

<p>部署好后会有一个默认的域名，比如<code>teedoc.github.io</code>， 如果想使用自己的域名，比如<code>teedoc.neucrack.com</code>，即需要自定义域名。</p>

<p>在<code>site_config.json</code>文件中设置了网站根目录映射的文件目录，比如这里是<code>pages/index/zh</code>目录：</p>

<pre><code class="json language-json">        "pages": {
            "/": "pages/index/zh",
            "/en/": "pages/index/en"
        },
</code></pre>

<p>在这个目录新建一个文件，取名<code>CNAME</code>注意没有后缀，然后写入自定义的域名比如<code>teedoc.neucrack.com</code>保存文件，提交即可</p>

<blockquote>
  <p>你可能在设置里面看到了<code>custom domain</code>的设置，但是需要像这里说的设置<code>CNAME</code>文件才能保持一直生效，不然下次提交自定义域名就失效了</p>
</blockquote>

                        </div>
                    </div>
                    <div id="previous_next">
                        <div id="previous">
                            <a href="/get_started/zh/usage/deploy.html"><span class="icon"></span><span class="label">部署</span></a>
                        </div>
                        <div id="next">
                            <a href="/get_started/zh/usage/deploy_nginx.html"><span class="label">使用 nginx 部署到服务器</span><span class="icon"></span></a>
                        </div>
                    </div>
                </div>
                <div id="toc">
                    <div>
                        <ul>
  <li><a href="#-1">克隆模板仓库</a></li>
  <li><a href="#ssh">生成 ssh 密钥</a></li>
  <li><a href="#-2">设置密钥</a></li>
  <li><a href="#-3">触发构建</a></li>
  <li><a href="#pages">设置 pages 服务</a></li>
  <li><a href="#pages-2">Pages 服务自定义域名</a></li>
</ul>

                    </div>
                </div>
            </div>
        </div>
        <a id="to_top" href="#"></a>
        <div id="doc_footer">
                        
            <div id="footer">
                <div id="footer_top">
                    <ul>
<li><a>链接</a><ul><li><a target="_blank" href="https://github.com/neutree/teedoc">使用 teedoc 构建</a></li>
<li><a target="_blank" href="https://neucrack.com">Copyright © 2021 Neucrack</a></li>
<li><a  href="/sitemap.xml">网站地图</a></li>
</ul>
</li>
<li><a>源码</a><ul><li><a target="_blank" href="https://github.com/neutree/teedoc">github</a></li>
<li><a target="_blank" href="https://github.com/teedoc/teedoc.github.io">本网站源文件</a></li>
</ul>
</li>
</ul>

                </div>
                <div id="footer_bottom">
                    <ul>
<li><a target="_blank" href="https://beian.miit.gov.cn">*ICP备********号-1</a></li>
<li><a target="_blank" href="https://beian.miit.gov.cn/#/Integrated/index">*公网安备**************号</a></li>
</ul>

                </div>
            </div>
                    </div>
</body>
<script src="/static/js/theme_default/main.js"></script>
<script src="/static/css/theme_default/prism.min.js"></script>
<script src="/static/js/custom.js"></script>
<script src="/static/js/search/main.js"></script>
</html>
